﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;

namespace TrenchcoatRobots.Classes.ComponentClasses.Colliders {
	class CircleCollider : Collider {
		public Vector2 Offset { get; set; }
		public float Radius { get; set; }

		#region Constructors

		/// <summary>
		/// Creates a new SphereCollider
		/// </summary>
		/// <param name="parent">The GameObject to which this collider belongs</param>
		/// <param name="radius">The radius of the Sphere</param>
		/// <param name="offset">The offset of the Sphere</param>
		public CircleCollider( ParentMethod parentMethod, float radius, Vector2 offset )
			: base( parentMethod, "CircleCollider" ) {
			Offset = offset;
			Radius = radius;
		}

		/// <summary>
		/// Creates a new SphereCollider
		/// </summary>
		/// <param name="parent">The GameObject to which this collider belongs</param>
		/// <param name="radius">The radius of the Sphere</param>
		public CircleCollider( ParentMethod parentMethod, float radius )
			: base( parentMethod, "SphereCollider" ) {
			Offset = new Vector2();
			Radius = radius;
		}

		/// <summary>
		/// Creates a new SphereCollider
		/// </summary>
		/// <param name="parent">The GameObject to which this collider belongs</param>
		public CircleCollider( ParentMethod parentMethod )
			: base( parentMethod, "SphereCollider" ) {
			Offset = new Vector2();
			Radius = 1f;
		}

		/// <summary>
		/// Creates a new SphereCollider
		/// </summary>
		/// <param name="parent">The GameObject to which this collider belongs</param>
		/// <param name="offset">The offset of the Sphere</param>
		public CircleCollider( ParentMethod parentMethod, Vector2 offset )
			: base( parentMethod, "SphereCollider" ) {
			Offset = offset;
			Radius = 1;
		}
		#endregion
	}
}
